import { createParamDecorator, ExecutionContext } from '@nestjs/common';
import { GqlExecutionContext } from '@nestjs/graphql';
// 创建一个装饰器
export const CurOrgId = createParamDecorator(
  /**
   * 在装饰器中，首先创建一个 GqlExecutionContext 实例
   * 然后获取上下文（context）并从中获取 orgid 字段的值
   * 最后，返回 orgId 值
   */
  (_data: unknown, context: ExecutionContext) => {
    const ctx = GqlExecutionContext.create(context);
    const orgId = ctx.getContext().req.headers.orgid;
    return orgId;
  },
);
